Sự Cú sốc song song đại diện cho sự thay đổi cốt lõi trong triết lý tính toán từ trình tự thời gian (làm một việc sau một việc khác) sang phân bố không gian (thực hiện mọi thứ cùng lúc trên một lưới).
1. Nguyên tắc độc lập
Đây là quy tắc vàng của tính toán GPU: “Mỗi khi bài toán của bạn là ‘áp dụng điều gì đó một cách độc lập lên N phần tử’, đây chính là cách thức đầu tiên cần thử.” Lối tiếp cận song song dữ liệu này là phần quả dễ hái nhất trong tăng tốc GPU, nơi chi phí quản lý luồng bị vượt trội bởi băng thông đồng thời khổng lồ.
2. Độ chính xác và khối lượng xử lý
Các kernel HIP thường xử lý các mảng lớn kiểu nguyên thủy. Trong đồ họa hiệu năng cao và học máy, chúng ta thường sử dụng float (độ chính xác đơn), trong khi các mô phỏng khoa học yêu cầu độ ổn định số học cực cao lại sử dụng double (độ chính xác kép).
3. Từ vòng lặp đến chiếm giữ
Trong mã CPU, bộ xử lý "thăm dò" dữ liệu qua các vòng lặp. Trong logic GPU, dữ liệu "chiếm giữ" một luồng. Bạn ngừng viết cách để lặp và bắt đầu viết điều mà một công nhân duy nhất nên làm tại một tọa độ cụ thể.
$$\text{Tổng chỉ số } i = \text{blockIdx.x} \times \text{blockDim.x} + \text{threadIdx.x}$$